Previous Book Contents Book Index Next

Inside Macintosh: QuickDraw GX Programmer's Overview / Part 1 - Getting Started With QuickDraw GX
Chapter 1 - An Introduction to QuickDraw GX


What Is QuickDraw GX?

QuickDraw GX is many things. It is a system extension that adds powerful color graphics and typographic capabilities to your Macintosh. It is a run-time environment that supports these powerful graphics. It is an API (an application programming interface) that your application can use to provide these graphics capabilities to your application's users. It is a printing architecture that provides a new system-wide human interface for printing. It is also a program-
ming and development environment that helps you to create exciting new graphics applications.

QuickDraw GX is a large system; it provides many features. The following sections examine these features and then describes how QuickDraw GX fits in with the rest of the Macintosh system software and how your application can use QuickDraw GX.

Features of QuickDraw GX

QuickDraw GX is a vast imaging architecture providing support for a great number of new graphics, typography, and printing features. Here is a list that highlights the features of this system:

As you can see, QuickDraw GX is an extensive new approach to computer graphics. The next two sections describe how QuickDraw GX fits in with the rest of the Macintosh system software and how your application can take advantage of the QuickDraw GX feature set.

QuickDraw GX and the Macintosh Toolbox

QuickDraw GX is a system extension that adds new software-based function-
ality to your Macintosh computer system. In general, QuickDraw GX does not replace existing parts of the Macintosh Toolbox; instead, it provides an additional set of features.

First of all, QuickDraw GX does not replace the original QuickDraw architec-
ture. QuickDraw provides a set of graphics capabilities using a state-based implementation. QuickDraw GX provides a different set of graphics capabili-
ties using an object-based implementation. An application is free to use both QuickDraw and QuickDraw GX graphics features. QuickDraw GX even provides a mechanism to translate QuickDraw function calls and PICT files into QuickDraw GX graphics objects. An application that does not use QuickDraw GX is unaffected if QuickDraw GX is installed.

On the other hand, the QuickDraw GX printing architecture does replace the Printing Manager. (However, applications that are unaware of QuickDraw GX can still call Printing Manager functions; when the application makes a Printing Manager function call, QuickDraw GX translates it into QuickDraw GX printing function calls.) Also, the QuickDraw GX printer driver model replaces the model used by the Printing Manager; therefore, Printing Manager print drivers do not work with QuickDraw GX.

To support the memory demands of an object-based architecture, QuickDraw GX provides a new memory management architecture. This
new system does not replace the Macintosh Memory Manager, but instead works independently of it. An application can create and manipulate QuickDraw GX objects, which the QuickDraw GX system manages, as
well as pointers and Macintosh handles, which the Macintosh Memory Manager manages.

QuickDraw GX works in conjunction with other parts of the Macintosh Toolbox. For example, QuickDraw GX provides functions that allow you to associate graphics shapes with specific Macintosh Window Manager windows. When you draw the graphics shapes, QuickDraw GX renders them in the correct position in the correct window on the correct device.

QuickDraw GX and Your Application

Your application can provide one of four different levels of QuickDraw GX support:

QuickDraw GX-unaware applications should be fully compatible with systems running QuickDraw GX. Only applications that rely on unsupported program-
ming methods are incompatible with QuickDraw GX systems. If your applica-
tion relies on such methods, you should seriously consider releasing a version compatible with QuickDraw GX, or, better yet, a QuickDraw GX-aware or QuickDraw GX-savvy version!

Chapter 8, "Printing," discusses some of the requirements for QuickDraw GX-
aware applications. That chapter presents some programming examples you can use when converting an existing application into an application that is QuickDraw GX-aware.

To become QuickDraw GX-savvy, your application must implement additional features, including supporting multiple page formats during printing and exporting QuickDraw GX graphics into QuickDraw PICT files when communi-
cating with applications that are not QuickDraw GX-aware. These applications must also follow a set of programming guidelines, which are provided with
the QuickDraw GX Software Development Kit and which include using QuickDraw GX for hit-testing, using line layout for typographic processing, and using QuickDraw GX bitmaps for color ramps.


Previous Book Contents Book Index Next

© Apple Computer, Inc.
6 JUL 1996